import request from '@/config/axios'

// 短信渠道 VO
export interface SmsChannelVO {
  id: number // 编号
  signature: string // 短信签名
  code: string // 渠道编码
  remark: string // 备注
  apiKey: string // 短信 API 的账号
  apiSecret: string // 短信 API 的秘钥
  callbackUrl: string // 短信发送回调 URL
  status: number // 开启状态
}

// 短信渠道 API
export const SmsChannelApi = {
  // 获取短信渠道分页
  getSmsChannelPage: async (params: PageParam) => {
    return await request.get({ url: `/system/sms-channel/page`, params })
  },

  // 获取短信渠道精简信息列表
  getSmsChannelSimpleList: async (status?: number) => {
    return await request.get({ url: `/system/sms-channel/simple-list`, params: { status } })
  },

  // 获取短信渠道详情
  getSmsChannel: async (id: number) => {
    return await request.get({ url: `/system/sms-channel/get`, params: { id } })
  },

  // 新增短信渠道
  createSmsChannel: async (data: SmsChannelVO) => {
    return await request.post({ url: `/system/sms-channel/create`, data })
  },

  // 修改短信渠道
  updateSmsChannel: async (data: SmsChannelVO) => {
    return await request.post({ url: `/system/sms-channel/update`, data })
  },

  // 删除短信渠道
  deleteSmsChannel: async (id: number) => {
    return await request.delete({ url: `/system/sms-channel/delete`, params: { id } })
  },

  // 导出短信渠道 Excel
  exportSmsChannel: async (params) => {
    return await request.download({ url: `/system/sms-channel/export-excel`, params })
  }
}
